#ifndef FILEWORKER_H
#define FILEWORKER_H

#include <QObject>
#include <QFile>
#include <QFileInfo>
#include <QTime>
#include <QAxObject>

class FileWorker : public QObject
{
    Q_OBJECT
public:
    explicit FileWorker(QObject *parent = nullptr);
    ~FileWorker();

    /**
     * @brief 初始化excel对象
     */
    void initExcel();

    /**
     * @brief 定义全局时间并创建Excel表
     */
    void createExcel();

    /**
     * @brief 获取Excel中的数据条数
     * @return
     */
    int getExcelDataRows();

signals:


public slots:

    /**
     * @brief 增加一个worksheet
     * @param sheetName
     * @param cnt
     */
//    void appendSheet(const QString &sheetName,int cnt);

    /**
     * @brief 向Excel单元格中写入数据
     * @param row
     * @param column
     * @param value
     */
//    void setCellValue(int row,int column,const QString &value);

    /**
     * @brief 保存excel
     * @param fileName
     */
//    void saveExcel(const QString &fileName);

    /**
     * @brief 保存数据
     * @param flowData
     * @param pressDate
     */
    void saveExcelData(QString flowData, QString pressDate, QString saveExcelData);

    /**
     * @brief 释放excel
     */
    void freeExcel();


private:
    // 文件操作,连接初始化控剑
    QAxObject *pApplication;
    QAxObject *pWorkBooks;
    QAxObject *pWorkBook;
    QAxObject *pSheets;
    QAxObject *pSheet;
    QAxObject *useRange;
    //保存的Excel名称
    QString excleFileName;
    //使用自增数据量填充表格数据，初始为2
    int autoExcelRows = 2;
};

#endif // FILEWORKER_H
